home *** CD-ROM | disk | FTP | other *** search
/ Deutsche Edition 1 / Deutsche Edition 1.iso / amok / 081-090 / amok82 / plot / source / plotinit.def < prev    next >
Text File  |  1993-11-04  |  5KB  |  162 lines

  1. (***********************************************************************
  2.  
  3.    :Program.    Plotinit.def
  4.    :Author.     Stefan Köhle
  5.    :Address.    Erhardtstr. 10
  6.                 W-7033 Herrenberg
  7.    :Phone.      07032/5146
  8.    :shortcut.
  9.    :Version.    1.0
  10.    :Date.       23.11.92
  11.    :Copyright.  nix
  12.    :Language.   Modula-II.
  13.    :Translator. M2Amiga 4.107d
  14.    :Imports.
  15.    :UpDate.
  16.    :Contents.
  17.    :Remark.
  18.  
  19. **********************************************************************)
  20.  
  21. DEFINITION MODULE PlotInit;
  22.  
  23. FROM IntuitionD IMPORT ScreenPtr,WindowPtr,IntuiMessagePtr;
  24.  
  25. FROM GraphicsD  IMPORT LayerPtr,RastPortPtr ;
  26. FROM SYSTEM     IMPORT FFP,ADDRESS ;
  27.  
  28.  
  29. (*-----------------------------------------------------------------------
  30.  
  31.   Alle wichtigen Variablen sind in der PlotBase organisiert. Das hat
  32.   einerseits den Vorteil, daß diese nicht auf dem Stack liegen, da ich
  33.   selber den Speicher dafür anfordere, andererseits kann ich den Proceduren
  34.   aus externen Modulen leicht diese Variablen zugänglich machen, indem
  35.   ich einfach den Zeiger auf die PlotBase übergebe.
  36.  
  37.   -----------------------------------------------------------------------*)
  38.  
  39.  
  40. TYPE
  41.      Buffer= ARRAY[0..250] OF CHAR;
  42.  
  43.      Werte = RECORD
  44.                 XWert: INTEGER ;
  45.                 YWert: INTEGER ;
  46.              END (* RECORD *) ;
  47.      Tabelle = ARRAY [0..294] OF ARRAY [0..219] OF Werte ;
  48. (*
  49.      TabelleKlein = ARRAY [0..102] OF ARRAY [0..75]  OF Werte ;
  50. *)
  51.      BeSchriftung = RECORD
  52.                        ZOben  : FFP ;
  53.                        DeltaZ : FFP ;
  54.                        XLinks : FFP ;
  55.                        DeltaX : FFP ;
  56.                        YHinten: FFP ;
  57.                        DeltaY : FFP ;
  58.                     END (* RECORD *) ;
  59.  
  60.      AChsen = RECORD
  61.                  XNull: INTEGER ;
  62.                  YNull: INTEGER ;
  63.                  ZNull: INTEGER ;
  64.               END ;
  65.  
  66.      PlotBasePtr = POINTER TO PlotBase ;
  67.  
  68.      PlotBase = RECORD
  69.                   Wert            : Tabelle ;
  70.                   Screen          : ScreenPtr ;
  71.                   Window          : WindowPtr ;
  72.                   HelpWindow      : WindowPtr ;
  73.                   Layer           : LayerPtr ;
  74.                   Rp              : RastPortPtr ;
  75.                   KastenX0        : INTEGER ;
  76.                   KastenY0        : INTEGER ;
  77.                   Raster          : BOOLEAN ;
  78.                   Achsen          : BOOLEAN ;
  79.                   Kasten          : BOOLEAN ;
  80.                   Beschriftung    : BOOLEAN ;
  81.                   Flaeche         : BOOLEAN ;
  82.                   FSchreiben      : BOOLEAN ;
  83.                   GrosseBitmap    : BOOLEAN ;
  84.                   GrosserSpeicher : BOOLEAN ;
  85.                   fertig          : BOOLEAN ;
  86.                   HelpVorhanden   : BOOLEAN ;
  87.                   HelpVorne       : BOOLEAN ;
  88.                   oldX            : INTEGER ;
  89.                   oldY            : INTEGER ;
  90.                   FaktorX         : FFP ;
  91.                   FaktorY         : FFP ;
  92.                   FaktorZ         : FFP ;
  93.                   xmax            : INTEGER ;
  94.                   ymax            : INTEGER ;
  95.                   B               : BeSchriftung ;
  96.                   A               : AChsen ;
  97.                   Schritt         : INTEGER ;
  98.                   ScreenHeight    : INTEGER ;
  99.                   ScreenWidth     : INTEGER ;
  100.                   BitMapHeight    : CARDINAL ;
  101.                   BitMapWidth     : CARDINAL ;
  102.                   LetzteFunktion  : Buffer ;
  103.                   Funktion        : Buffer ;
  104.                   FehlerNummer    : CARDINAL ;
  105.                   Dir             : ARRAY [0..130] OF CHAR ;
  106.                   DirFunktionen   : ARRAY [0..130] OF CHAR ;
  107.                   DirBilder       : ARRAY [0..130] OF CHAR ;
  108.                   OldDir          : ARRAY [0..130] OF CHAR ;
  109.                   BildName        : Buffer ;
  110.                   FunktionName    : Buffer ;
  111.                   letzterName     : Buffer ;
  112.                 END (* RECORD *) ;
  113.  
  114.  
  115. PROCEDURE Request(Text: ARRAY OF CHAR; GadgetText: ARRAY OF CHAR;
  116.                   Win: WindowPtr) ;
  117.  
  118. PROCEDURE YesNoRequest(Text: ARRAY OF CHAR; GadgetText: ARRAY OF CHAR;
  119.                        Win: WindowPtr): BOOLEAN ;
  120.  
  121. PROCEDURE StringRequest(VAR Pb: PlotBasePtr): BOOLEAN ;
  122.  
  123. PROCEDURE SetUp(VAR Pb: PlotBasePtr): CARDINAL ;
  124.  
  125. PROCEDURE CleanUp(VAR Pb: PlotBasePtr) ;
  126.  
  127. PROCEDURE Speichern(VAR Pb: PlotBasePtr): BOOLEAN ;
  128.  
  129. PROCEDURE Laden(VAR Pb: PlotBasePtr; Req: BOOLEAN): BOOLEAN ;
  130.  
  131. PROCEDURE UpdateMenus(VAR Pb: PlotBasePtr; welches: CARDINAL) ;
  132.  
  133. PROCEDURE FunktionHolen(VAR Pb: PlotBasePtr ; Disk: BOOLEAN; NeueFunktion:
  134.                         BOOLEAN): BOOLEAN ;
  135.  
  136. PROCEDURE FunktionTesten(VAR Pb: PlotBasePtr):
  137.                          BOOLEAN ;
  138.  
  139. PROCEDURE ArgTesten(VAR Pb: PlotBasePtr; Arg: BOOLEAN): BOOLEAN ;
  140.  
  141. PROCEDURE UpdatePb(Pb: PlotBasePtr) ;
  142.  
  143. PROCEDURE ScreenHoch(MyScreenPtr: ScreenPtr) ;
  144.  
  145. PROCEDURE ScreenWeg(MyScreenPtr: ScreenPtr) ;
  146.  
  147. PROCEDURE MenuNummer(code:CARDINAL):CARDINAL;
  148.  
  149. PROCEDURE ItemNummer(code:CARDINAL):CARDINAL;
  150.  
  151. PROCEDURE SubItemNummer(code: CARDINAL):CARDINAL ;
  152.  
  153. PROCEDURE WelcheTaste(code: CARDINAL):CARDINAL ;
  154.  
  155. PROCEDURE BildSpeichern(Pb: PlotBasePtr) ;
  156.  
  157. PROCEDURE BildLaden(Pb: PlotBasePtr): INTEGER ;
  158.  
  159. END PlotInit.def
  160.  
  161.  
  162.